text:
Fatal Error Connecting

Updating existing world from AR 1.1.1 to 1.1.2 (LibVulpes 0.2.0 to 0.2.1)
Get a fatal error when connecting to the server. Error begins at line 18112 in client log. Full logs attached:
client latest.txt
server latest.txt
[16:54:38] [Netty Client IO #1/ERROR]: There was a critical exception handling a packet on channel libVulpes
io.netty.handler.codec.DecoderException: java.lang.NullPointerException
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.func_148833_a(FMLProxyPacket.java:100) [FMLProxyPacket.class:?]
	at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:149) [eo.class:?]
	at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:51) [eo.class:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleClientSideCustomPacket(NetworkDispatcher.java:407) [NetworkDispatcher.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:273) [NetworkDispatcher.class:?]
	at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:73) [NetworkDispatcher.class:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:163) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:163) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:163) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHandler.java:150) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) [netty-all-4.0.23.Final.jar:4.0.23.Final]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25]
Caused by: java.lang.NullPointerException
	at zmaster587.advancedRocketry.dimension.DimensionProperties.setStar(DimensionProperties.java:317) ~[DimensionProperties.class:?]
	at zmaster587.advancedRocketry.dimension.DimensionProperties.readFromNBT(DimensionProperties.java:1074) ~[DimensionProperties.class:?]
	at zmaster587.advancedRocketry.network.PacketDimInfo.readClient(PacketDimInfo.java:75) ~[PacketDimInfo.class:?]
	at zmaster587.libVulpes.network.PacketHandler$Codec.decodeInto(PacketHandler.java:210) ~[PacketHandler$Codec.class:unspecified]
	at zmaster587.libVulpes.network.PacketHandler$Codec.decodeInto(PacketHandler.java:192) ~[PacketHandler$Codec.class:unspecified]
	at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:103) ~[FMLIndexedMessageToMessageCodec.class:?]
	at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:40) ~[FMLIndexedMessageToMessageCodec.class:?]
	at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[netty-all-4.0.23.Final.jar:4.0.23.Final]
	... 40 more

Would you be able to send a copy of the server's advRocketry/temp.dat file?  And the planet XML configs if there are any?

No planets as of yet, here's the temp.dat though.
https://drive.google.com/open?id=0B4UhGIFXzCO6dDlLVzAyYlN0eGM

There's an astroid xml though, would that work?

The asteriod XML i don't think is related, if you don't have a planet XML file then it'll use internal so I can work with that.  I'll try it in a second

I can confirm an replicate the issue, I'll have a build up in 10 to 30 minutes

Fixed build should be up, only the client really needs it though.  Overworld and Sol had been being treated as a special case up until the last build.

Sounds great, thanks!

We are also running into this exact same issue on AR 1.2.2 and LibVules 0.2.5

authors: Towsty Yorkforce zmaster587


text:
refactor: move credentials into workflow env

This is a simpler and cleaner approach than previous implementations.

Testing
I checked and cleared the registry cache ...
docker.io/innovaker/zmk-docker-cache:dev
docker.io/innovaker/zmk-docker-cache:build
... before running each scenario.

all username/token secrets available

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858222844
Release: https://github.com/innovaker/zmk-docker/actions/runs/858238858
Registry cache created!

without DOCKER_HUB_USERNAME

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858251641
Release: https://github.com/innovaker/zmk-docker/actions/runs/858262343
Registry cache not created.

without DOCKER_HUB_TOKEN

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858264793
Release: https://github.com/innovaker/zmk-docker/actions/runs/858275558
Registry cache not created.

without GHCR_USERNAME

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858280000
Release: https://github.com/innovaker/zmk-docker/actions/runs/858303291
Registry cache created!

without GHCR_TOKEN

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858310990
Release: https://github.com/innovaker/zmk-docker/actions/runs/858326688
Registry cache created!

all username/token secrets available (check new tokens)

Candidate: https://github.com/innovaker/zmk-docker/actions/runs/858330919
Release: https://github.com/innovaker/zmk-docker/actions/runs/858344241
Registry cache created!

source: gharchive/pull-request

repo: zmkfirmware/zmk-docker

license: MIT

license_type: permissive

license_source: github-api


text:
Asynchronous Adapter Dispatch

I believe putting each adapter's dispatch into an async job queue would be best; but, I'm not sure how to best go about this in the idiomatic way (GenServer/GenEvent?, External Job Queue Module?, Something like Resque?). I've outlined a few desirable aspects:
Goals

Ideally do this without any external (to elixir) dependencies (ex. Running a Redis server, RabbitMQ stack, etc. -- I'm not closed to this, but I'd love to keep it simple)
The ability to incorporate retries, back-offs, etc, and log when all tries exhausted
Persistence so that jobs don't disappear on App restart/server reboot
Not incorporate all the async code directly into echo, but have it easily pluggable.

Wow, it's been a long time...
So I think mnesia should fit the bill.

[x] no dependencies
[x] persistence

Although something that handles the rest of the code would be really nice, like jobs - erlang , honeydew or perhaps just bite the bullet and look at rabbitmq.

source: gharchive/issue

repo: zmoshansky/echo

license_source: bigquery


text:
Uploading subjects barfs on manifest text containing umlauts

I'm uploading a subject that has in its manifest the field "Location name" for which the value is "Marktplatz Tübingen, Germany".
I get an Error 500 back, "We're sorry, but something went wrong"
Am I really limited to the 128-ASCII table?!
(Also, poor error response...)

No we should support the full utf-8 character set. I do have an error in our logger about malformed utf-8 error values.

You're using Python 2.7 right? I know it has some weird hangups about utf characters and strings. I'll see if I can find some documentation about it.

Oh, hmm... okay, I'll look into it, too.

There's this page which is the main one https://docs.python.org/2/howto/unicode.html

The JSON looks okay when I print it:
Tried to pass data:
    {
        "subjects": {
            "locations": [
                "image/jpeg"
            ],
            "metadata": {
             "Filename": "cam3397_20150213_090946.jpg",
                           "Webcam": "3397",
                           "Location Name": "Marktplatz Tübingen, Germany",
                           "Latitute": "48.52126",
                           "Longitude": "9.05311"
            },
            "links": {
                "project": "348"
            }
        }
    }

But I'll check out that page. (...started reading...) Oh, right. I remember reading about this once. Okay, let's see if I can properly encode everything. -sigh-

(PS, uploading has been great so far. I've been uploading a group of about 10,000 images. It had been chunking along quickly for 5254 images until it hit my mis-encoded umlaut.)

Argh! I want to gauge my eyes out. Why is this so hard? (I can't figure out what encoding I'm reading in, so can't convert it to anything. It's not utf-8 or latin-1 or ...)

Yeah it's hard because computers are terribad.

Is there anyway your script would work in Python 3? That has default unicode support. Are you on windows? It uses a different weird encoding system.

It's a Windows encoding. I'm pretty sure of it. I think I need to just figure out how to convert my text file to another encoding... may be the easiest?

@edpaget I've made some progress. I can actually properly encode/decode my file now. (That only took 3 hours).
But I'm still having trouble passing the data to the Panoptes API. What format does Panoptes expect the payload to be in? This doesn't seem to work, for example:
Tried to pass data:
    {
        "subjects": {
            "locations": [
                "image/jpeg"
            ],
            "metadata": {
             "Filename": "cam3397_20150213_090946.jpg",
                           "Webcam": "3397",
                           "Location Name": ""Marktplatz Tübingen",
                           "Latitute": " Germany"",
                           "Longitude": "48.52126"
            },
            "links": {
                "project": "348"
            }
        }
    }

OMG. That only took 5 hours to figure out.
-bangs-head-on-table-
-passes out-

@mkosmala it'd be nice if you outline the solution here for future users.

Hmmm... Okay, @camallen
Step 1: Read the webpage @edpaget referenced above.
Step 2: Also read this webpage: https://pythonhosted.org/kitchen/unicode-frustrations.html
Step 3: Realize that in Python, 'decode' means to go from ascii to unicode, and 'encode' means to go from unicode to ascii. Which seems backwards, but there you have it.
Step 4: Realize that there is no reliable way to know what @#$! codec your text file is in.
Step 4.5: Realize that you're on a Windows machine and so your codec is probably some weird thing that no unix-based machine can hope to read. And files may have BOMs at the beginning. And all sorts of craziness. Decide to abandon Windows.
Step 5: Borrow husband's Mac, transfer file, and replace all the messed-up-looking characters with the correct ones using find-replace-all. Importantly: save as UTF-8. Transfer file directly to remote linux machine where the images are.
Step 6: Find this little piece of magic: top answer of http://stackoverflow.com/questions/904041/reading-a-utf8-csv-file-with-python .
Step 7: Steal Borrow code from awesome StackOverflow answer to finally read file in successfully.
Step 8: Become desolate because code still crashes.
Step 9: Eat chocolate. Rally.
Step 10: Figure out that this unicode(str(project_id)) is a functional way to turn an integer into unicode.
Step 11: Figure out how to properly encode metadata text as ascii using XML encodings for non-128-ascii characters: strvalues = values.encode('ascii','xmlcharrefreplace')
Step 12: Watch code run successfully. Yawn. Go to bed because it's past midnight and you have to nurse the baby when he wakes up at 6:30am. (YMMV)

Thanks - I especially like Step 9!

authors: camallen edpaget mkosmala

repo: zooniverse/Panoptes


text:
Permission popup appears during app startup on ios

I used this library to get the notification permission on device but every time i install the app or rebuild it, permission popup appears automatically on app startup, however it was not happening when i was on version 1.1.1 . can anyone shed some light on this?
React native version: 0.59.4
ios device: iOS 12.4.5 (ipod touch)
Development Versions: macOS Catalina 10.15.4
React Native Permissions: "^2.0.0"

Where do you trigger the permissions request?
Provides some code or this issue will be closed.

@zoontek Thanks for reply.
Here is the wrapper around the lib functions according to need.
import {checkNotifications, requestNotifications, openSettings} from 'react-native-permissions';
import Log from './log';

module.exports = {
  requestPermissions() {
    return new Promise(resolve => {
      requestNotifications(['alert', 'sound', 'badge']).then(response => {
        let permission = false
        if (response.status === 'granted') {
          permission = true
        }
        const logData = {
          title: 'App asked for notification',
          message: {
            notificationStatus: permission
          }
        }
        Log.save(logData);
        if (permission) {
          resolve('Allowed');
        } else {
          resolve('Not Allowed');
        }
      })
    });
  }
}

and i call the function requestPermissions when user press on the permission dialogues delivered from the server and then this function call open the permission popup. here the things are working fine. no complaints at all!!
here is the function call: (this will be called when user press on particular dialogues for the permission)
if (inputRequest.type === 'permission_popup_open') {
          const response = await Permission.requestPermissions();
          this.handleActionPermissionButton(response);
          this.resetExecutionTime();
        }

but the problem is when i reinstall the app(by uninstalling) or update the app, then permission popup appears regardless the requestPermissions function call.
here is the pods:
  pod 'RNPermissions', :path => '../node_modules/react-native-permissions'
  permissions_path = '../node_modules/react-native-permissions/ios'

  pod 'Permission-Notifications', :path => "#{permissions_path}/Notifications.podspec"

However, it was working before when i was on version 1.1.1 but after upgrading to 2.0.0 i'm facing this.
I reckon, this is not the problem with the code. this is more with the delegates or pods.Thanks!!!

@zoontek  I just came across this a swell. I'm not calling requestNotifications or even checkNotifications() anywhere. The popup comes up every time i delete the app and reinstall
"react-native-permissions": "3.6.1"
"react-native": "0.70.4"

device is iOS 16.1

authors: ketan-kumar kg-currenxie zoontek

repo: zoontek/react-native-permissions


text:
🛑 AI For Admin is down

In a5f3e3b, AI For Admin (https://armyignited.army.mil/admin/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: AI For Admin is back up in e4e62ec.

repo: zootsewt/aistatus


text:
Add theming to button

The challenge 🍿
Add theming to Button component
The solution 💯
Actual JL component:

Sketch designs:
https://www.sketch.com/s/f4ac3b8e-aac1-4279-af42-10e8ef86643d/p/C01C36D2-4C4C-4C71-ADAB-90A622DE31C8

:tada: This PR is included in version 5.16.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

authors: calvin-fung-zopa poteirard

repo: zopaUK/react-components


text:
Wrong date formats in page z/OS Open Tools Usage Analytics

Description
The graph on the z/OS Open Tools Usage Analytics page http://163.74.88.212:3000/ displays bars with year 2026, which is obviously wrong.
See picture:

Severity
Sev 4 - Low
Expected Behavior
No response
Actual Behavior
No response
z/OS Version
No response
zopen package manager version
No response
Additional Information (Optional)
No response
Network or Security Configuration (Optional)
No response

Moreover:

the link "Usage Stats" from the main zOpen.community menu should be to a host name, not the IP address 163.74.88.212
the target page should be configured with https and a valid certificate

repo: zopencommunity/meta


text:
Issue 80

This PR provide support for mglyph-like elements. That is, all unknown elements that contain a direct speech attribute (e.g, alt, aria-label) are considered.

Elements found in (inferred) rows are handled as unknown elements with speech.
Those embedded as singletons in token elements (mi, mo, etc.) are treated in their context. E.g.,

<mo><mglyph alt="x"/></mo>

is treated as an operator and spoken as x. Direct speech attributes on the token will supersede the ones in the lower layer.

There is no support for mixed elements yet. Currently it will simply ignore any mglyph. I'll treat  that when I see a real world example.

This handles all examples from issue #80 and the ones I found built by Bruce Miller.

It also handles all the examples given in #165

repo: zorkow/speech-rule-engine


text:
Implement a reverse geocoder to replace the "your coordinates" list

For implementing the access index, which is based on the user right-clicking a point on the map (and, in the future, searching for a specific address), we should tell the user the address for their point – instead of the coordinates.
I know of one reliable reverse geocoder, and that's OpenStreetMap's Nominatim service. You might also find a Leaflet plugin that implements a reverse geocoder. I would start by looking at the list of Leaflet plugins.

Hey Steven,
All my changes have been committed.  Take a look at the new context menu options, "Show Address" and "Clear Comparison".  "Show Address" displays the address of the coordinates on the "Access Index" sidebar, and creates a blue popup on the map with the address.  I was thinking the pop-up might be good so that the person remembers where they clicked. Then I added a "Clear Comparison" function which will remove the addresses from the "Access Index" sidebar (however, this does not remove the pop-ups).
Follow up questions:

How do you feel about the Clear Comparison function?  The context menu might not be the best place for it, but if we are going to compare access indices on the sidebar we'll need this somewhere.
How do you feel about the blue pop-up?  If you like it, should we figure out how to delete them as a part of the Clear Comparison function?
Does the Show Coordinates option in the context menu have any other use?  Should I delete it?

Let me know!

Thanks for doing this!

Put the "Clear" function in the sidebar.
Find a new icon to represent the address.
Nope, get rid of the "show coordinates" option.

authors: guillermokrh stevevance

license: mit


text:
Invisible asterisk (*) character

This is the command that i type:
git mv src/*.php src/theme

This is what i see:

OS: WSL Ubuntu 18.04
Terminal: Windows Terminal
Theme: spaceship
Font: Fira Code

Run print -P '%F{blue}Hello world%f!'. What does it print?

An invisible "Hello world" text

@rizkysyazuli I thought that might be the case.  The most likely cause is that your terminal emulator uses for blue the same color as the background color.  (Note that blue and cyan are distinct.  You can see the difference with the colortest program.)  You should fix this in your terminal emulator settings.

@danielshahaf ah, yes indeed it is. thx for the tip!

authors: danielshahaf rizkysyazuli

repo: zsh-users/zsh-syntax-highlighting


text:
Title generation takes the full message, which could exceed GPT 3.5 prompt window

I was having some long conversations with GPT-4-turbo, which has an 128K message window.
Then I received the error message saying the input is too long. After some debugging, I found it's the title generation that always uses GPT 3.5 (which is great!) and full input message.
I guess for the purpose of generating the title, simply truncating the input would be enough :-)

Duplicate of https://github.com/ztjhz/BetterChatGPT/issues/377
Frustrating that this hasn't been fixed

authors: SteveLTN endolith

repo: ztjhz/BetterChatGPT


text:
Starcraft Map Constant

In version 1.0.6 eps-server can suggest Starcraft Constant(ex: "Terran Marine), but can't suggest Map Constant(ex: "James" a.k.a "Terran Marine").

Using WASM from Rust, or ffi-napi. I think handwrite MPQ Reader is bad choice. That will be reinvent the wheel. Instead, using stormdll is good for both user and developer.
Save Map URI at config, or transfer to server by command? Maybe former is good for eps-server to remember Map.

Server can manage euddraft config in #36.

I think https://github.com/wc3tools/stormlib-rs is good choice for StormLib binding.

authors: armoha zuhanit

repo: zuhanit/epscript-lsp


text:
Tomcat部署后报404错误，楼主，帮忙！

我把dist目录的内容部署到tomcat的ROOT目录中，但是无法打开页面，直接报404错误，请楼主帮忙看看。
打开的网址是：http://localhost:8080/login?from=/
错误信息如下：
HTTP Status 404 - /login
type： Status report
message： /login
description： The requested resource is not available.
Apache Tomcat/7.0.67

把所有的路由指向dist/index.html
https://github.com/zuiidea/antd-admin/issues/269

我也是刚刚开始学习react，不知道在哪里修改，请问是否可以举个例子？

authors: edwardxh zuiidea

repo: zuiidea/antd-admin


text:
home: Sort leading emoji first in channel names

Update the channel sorting logic to ensure streams with leading emojis in their names are listed above those without emojis. The updated sorting respects pinned, muted, and unmuted streams while handling emoji precedence and maintaining alphabetical order for ties.
Fixes: #1202

Hello, @chrisbobbe I have done the required changes. Please have a look and let me know if anything else is required.
Thanks!

repo: zulip/zulip-flutter


text:
Solution found: Newer Unicode emojis don't render on older Android devices

Older Android devices are missing newer Unicode emoji; they just show up as empty squares. I'm mostly sure this is the same issue as https://github.com/zulip/zulip-mobile/issues/3181, but that one is mostly screenshots, and I'd like to start fresh with some (hopefully clear) steps to a solution at the top.
To use the Android EmojiCompat library would be the best solution if React Native supported it. Without support, we'd be left to do a lot of imperative string processing to get it to work, and probably make our own wrapper of Android's native TextView component, and we'd get in the way of the React Native layer by doing this. See the React Native feature request here.
So, without that, we can ask the app to use an emoji font of our choosing for all of its Unicode emoji. We considered using it as a fallback font, just to fill in what's missing, but the inconsistency in style between the system font and the new font would be jarring, so it's preferable to use the new font for all Unicode emojis. We'd like to try using the Noto Color Emoji font, as mentioned by @raphlinus (thanks Raph!) in the RC realm (link accessible only to users in that realm). Since it's a large font (around 9 MB), we'd like to load it dynamically instead of shipping it with the app.
We've found a way to do that, which should work with compatibility back to Android API version 14, inclusive, using Downloadable Fonts.
We don't see documentation in React Native about its support for Downloadable Fonts, so I'll refer directly to the commit (https://github.com/facebook/react-native/commit/fd6386a07eb75a8ec16b1384a3e5827dea520b64 on PR https://github.com/facebook/react-native/pull/24595) that introduced it, included in React Native versions 0.60.0 and above. (This is a second attempt; the history shows a first attempt in https://github.com/facebook/react-native/commit/f01c4e2a14c194c7a02bc5afe1900573af02b0c7 on PR https://github.com/facebook/react-native/pull/23865, but that was reverted in https://github.com/facebook/react-native/commit/eb40b09bfd0e617912663fb056d0bdea85ce0c2f.)
So, let's try:

Await the upgrade to React Native 0.60.0; this is already in progress. 🙂
As directed in a comment at https://github.com/facebook/react-native/pull/24595/commits/fe3dd73ee196e06c84c035fd524cace3dffca802#diff-d4141c42bc6789637b6fdc7754ec1dd9R86-R92, we need to put some XML in the res/font folder to identify the Noto Color Emoji font. An Android developer guide describes what to put there.
2.a. It shows that we need the Android Support Library 26; we don't have to do anything here because we're using 28.
2.b. We can optionally pre-declare the font in the manifest to mitigate delays in the initial load of the font.
Then, I believe (again, from https://github.com/facebook/react-native/pull/24595/commits/fe3dd73ee196e06c84c035fd524cace3dffca802#diff-d4141c42bc6789637b6fdc7754ec1dd9R86-R92, and also from a tester app modified at https://github.com/facebook/react-native/pull/24595/commits/fe3dd73ee196e06c84c035fd524cace3dffca802#diff-fa16d6c913409ad4467bc9a55506815fR50 in that same commit), we can do ReactFontManager.getInstance().addCustomFont(this, "NotoColorEmoji", R.font.NotoColorEmoji); in public void onCreate in /android/app/src/main/java/com/zulipmobile/MainApplication.java.
We can then change the CSS in the MessageList WebView to use the font. Since it's an emoji font, we expect that it only has glyphs for emojis themselves, and that regular text will still be rendered with the system font. (@WesleyAC)
And we can style the React Native components that use emoji (the emoji picker and reactions list, possibly others) to also use the font.

Then: 🪀🧱🦙🦞🪗!

The RN upgrade is complete! So it should now be possible for us to try this solution.

authors: chrisbobbe gnprice

repo: zulip/zulip-mobile


text:
Allow internal links to use stream ID without stream name

This is the mobile counterpart to zulip/zulip#15402:

Apparently we don't support using links of this form to access to a topic:
https://chat.zulip.org/#narrow/stream/3/topic/send_message.20API
requiring the stream name (or anything) to be encoded after a dash, like here:
https://chat.zulip.org/#narrow/stream/3-backend/topic/send_message.20API

The relevant code in our codebase is here, in src/utils/internalLinks.js:
/** Parse the operand of a `stream` operator, returning a stream name. */
const parseStreamOperand = (operand, streamsById): string => {
  // "New" (2018) format: ${stream_id}-${stream_name} .
  const match = /^(\d+)-/.exec(operand);
  if (match) {
    const stream = streamsById.get(parseInt(match[0], 10));
    if (stream) {
      return stream.name;
    }
  }

  // Old format: just stream name.  This case is relevant indefinitely,
  // so that links in old conversations continue to work.
  return decodeHashComponent(operand);
};

The webapp now accepts the ID-only form, and we should too. (It still won't generate links of that form -- but bots may start doing so.)

Hi, may I take this up?

Hi, may I take this up?

Sure, thank you, @AdityaYadavalli1! I've just assigned it to you.

Sure, thank you, @AdityaYadavalli1! I've just assigned it to you.

authors: AdityaYadavalli1 chrisbobbe gnprice


text:
server dead when hostname modifed

After incautious modification of hostname, the server became dead. Python processes occupy 100% CPU. Web accessing gives error also.
The server returns to normal after reset hostname back.

This is almost certainly caused by rabbitmq not handling hostname changes; see #194.  I'm hoping that issue will be fixed by hardcoding the rabbitmq nodename in the next release.

authors: timabbott xoofee

repo: zulip/zulip


text:
moderator should be able to change channel subtitle

Hello,
As a moderator, we should be able to change the channel subtitle, is it possible to implement this ?

Hey! Thanks for the feedback!
We plan to implement this by adding a new setting to control who can change stream details and permissions as part of #19525.

great news !

Closing this one, as it's already being tracked.

authors: alya dmagniez sahil839


text:
Remove empty space between sent messages and input field

https://www.dropbox.com/s/wv1hx2ixnxy08x0/Screenshot from 2023-07-20 20-31-49.png?dl=1
Looks like there is no reason to look at empty space instead of seeing more messages from the history.

This is a duplicate of #16397.

authors: karlstolley poglazoff


text:
Various portico updates for 1.9.

@timabbott would be great to get this (or at least the first two commits) merged and deployed before the release. I think replacing our heros with pictures significantly changes the initial impressions of the pages.
Not the greatest pictures, but I found for now:

Merged, thanks @rishig!

authors: rishig timabbott


text:
data_import: Make slack bot emails unique.

Fixes #16793
Testing plan:
tested manually as well as using ./tools/test-backend

@timabbott I have made the changes.

@timabbott I have made the changes.

This looks like a much simpler interface, which is nice, but I don't understand how this works as it's a bit hard to read -- posted a few comments.

@timabbott I have made the changes .Can you review again.

I still don't feel like I understand the algorithm being implemented here.
@hackerkid perhaps you can help more interactively.

@garg3133 would you be up for submitting a PR fixing this issue?  I don't understand the logic behind this particular approach to it, but you should be well-equipped to figure out a robust solution.

@timabbott Opened #19436.

Closing in favor of #19436.


text:
frontend: change appearance of invite-user-link from a link to button

previously Inside settings-> invitation when we invite user in organization (invite-more-user) is shown as a link ,which does not look good so I changed it appearance to a button.
Testing plan: tested locally
GIFs or screenshots:
Before

After

@alya thoughts on this?  I think it's probably a net positive tweak even if the end result isn't perfect.

yeah, It's better than the link .

+1

@timabbott can review it.

@timabbot can you review it .

@ritikchauhan-01 can your rebase this?

Can you write a commit message and add a screenshot for the "Forgot password?" change commit in this PR?

authors: alya ritikchauhan-01 timabbott


text:
Fix giphy icon not being served by server.

discussion: https://chat.zulip.org/#narrow/stream/101-design/topic/giphy.20integration
@timabbott looks like I missed out some things while rebasing the giphy pr, sorry for the trouble. Added a commit to fix it too.

Merged, thanks @amanagr!  Though ... we should probably also rename compose_giphy_logo to something different, since it's no longer an icon.

authors: amanagr timabbott


text:
realm: Add jitsi_server_url feature.

Fixes #17914
At database level, the default value for jitsi_server_url is empty string, ’’, as update_realm() does not pass parameters’ with value of None to do_set_realm_property for database update and zulip event systems, unless we add conditional statement like if k == "jitsi_server_url" and getattr(realm, k) != v: in the for loop (for k, v in list(req_vars.items()):) in update_realm().
At the API level, if a client chooses the default value, update_realm() will receive ”default” string and we will parse the value into the empty string ’’.
check_string_in_or_url function is constructed as for validating whether the jitsi_server_url parameter passed contained ”default” or valid URL.
Testing plan:

Ensure realm_jitsi_server_url is rendered at home view using class HomeTest.
Added test_jitsi_server_url to class RealmTest to ensure request calls and responses related to the jitsi_server_url parameter are aligned with expectations.
Ensure Realm API works properly with jitsi_server_url using class RealmAPITest
Ensure updates on the jitsi_server_url property is in sync to other clients using class RealmPropertyActionTest
Ensure check_string_in_or_url is worked as intended.

GIFs or screenshots:

@timabbott This is ready for reviews and comments!

@seiwailai thanks for working on this!  I just did a quick look, and it seems reasonable; I'll do a more thorough review after the 4.0 release (hopefully tomorrow).  One thing I notice is that the commits seem out of order; I think you want to have the first commit be adding the new validator function.  You should be able to fix this with git rebase -i upstream/master.

@seiwailai thanks for working on this! I just did a quick look, and it seems reasonable; I'll do a more thorough review after the 4.0 release (hopefully tomorrow). One thing I notice is that the commits seem out of order; I think you want to have the first commit be adding the new validator function. You should be able to fix this with git rebase -i upstream/master.

Thank you, will organize the commits order soon.

@timabbott This is ready for review and comments.

I posted a few comments, but @sahil839 perhaps you can help review this to get it closer to a mergeable state.

I think we also need to handle the case when settings.JITSI_SERVER_URL is set to None by some organization.

@seiwailai Would you be up for updating this, or is it better if try to find a contributor for finish up this PR?

Hey @mateuszmandera, anyone is welcomed to finish up this PR.

We do not need check_or, since we already have check_union. This check_or also gives a misleading error message for the non-matching case, and completely lacks type safety (Any is not a type).
#19851

Closing as https://github.com/zulip/zulip/issues/17914 was resolved via a newer PR.

authors: andersk mateuszmandera sahil839 seiwaifave seiwailai timabbott


text:
Allow clean_unused_cache to run on purge-old-deployments.

Testing plan:
Tested it by running the scripts individually and purge-old-deployments.
GIFs or screenshots:

After reading this a bit more, the right answer is pretty clearly to just support this option in purge_old_deployments itself, since it's potentially useful there, and in any case, we've pretty clearly relying on the invariant that all these scripts support the same parameters.

authors: Riken-Shah timabbott


text:
puppet: Remove "ensure => absent" rules which have all been applied.

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Merged, thanks for the cleanup @alexmv!

authors: alexmv timabbott


text:
tornado: Speed up hot path by removing use of asdict

Fixes:

Screenshots and screen captures:

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

The changes look reasonable to me on reading, but obviously something is awry given the test failure.

The test failures came from the second commit here -- we can't not generate extra_user_data[user_profile_id], since we need it to notify the client queues below.  We can only skip the receiver_is_off_zulip / maybe_enqueue_notifications calls if the user is not is_notifiable.

Merged, thanks @alexmv!

Just realized that the actual timings got eaten from the commit message because I prefixed them with #.  Oops.

For reference:
%timeit asdict(o)
24.3 µs ± 1.35 µs per loop (mean ± std. dev. of 7 runs, 10,000 loops each)

%timeit {**vars(o)}
562 ns ± 14.9 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)


text:
stream_settings: Disable "Add subscribers" UI if user lacks permission.

If user don't have the permission to add subscribers to stream then disable the "Add subscribers" UI in stream creation UI and stream subscribers UI.
Added CSS to cursor:disable, opacity: 0.4 and tippy tooltip to person_picker, add_subscriber_btn_wrapper when user lacks permission.

Fixes:
#25263

Screenshots and screen captures:

https://user-images.githubusercontent.com/64723994/235301281-b19936b9-feff-4c74-ab7a-5f7525d2c112.mp4

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[x] Calls out remaining decisions and concerns.
[x] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[x] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

Need suggestions for the naming of :

Name for the parameter passed to add_subscribers_form.hbs which is true if the user has permission to add subscribers to the stream(currently named as permission_to_add_user)
class name for the element with class add_subscribers_container when the user doesn't have permission to add users to apply relevant CSS. (currently named as no_permission_to_add_user).

#24900 already has a commit which disables the "Add subscribers" UI.

@sahil839 What would you recommend as the next step here? Would it be best to close this PR and help address the feedback on https://github.com/zulip/zulip/pull/24900 instead?

Yes, would be fine to do so. We would anyways want #24900 to get completed soon as it fixes a quite confusing bug in stream creation.

@sahil839, @Ujjawal3 has been inactive for the last 3 days. can you review this PR if it doesn't require many changes, maybe we can merge this PR and then Ujjawal can rebase when he returns, if this PR is not close to what we want maybe it will be best to close this PR?

Rather than spending @sahil839 's time reviewing another PR, I think @Ddharmani3 and @Ujjawal3 should coordinate on who would like to push https://github.com/zulip/zulip/pull/24900 forward.

Rather than spending @sahil839 's time reviewing another PR, I think @Ddharmani3 and @Ujjawal3 should coordinate on who would like to push #24900 forward.

sure I will coordinate with @Ujjawal3 to work on @24900.
Closing this PR in favor of #24900.

Thanks!


text:
stripe: Change pricing for plus plan.

This also now allows user to upgrade to plus plan from pricing page.

Do we have test coverage for the new code path of upgrading to Plus directly?

The screenshots look good to me!

Do we have test coverage for the new code path of upgrading to Plus directly?

Oops! Added those for invoice and card payment.

Merged, thanks @amanagr!

authors: alya amanagr timabbott


text:
Correctly associate bot name field label

The label element for the bot name editing field was trying to use
a "for" attribute to link it to the input field, but the field had
no ID for it to associate with.  Added the ID value which it
was trying to use.
Fixes #4999.

Automated message from Dropbox CLA bot
@jmbowman, it looks like you've already signed the Dropbox CLA. Thanks!

This looks great!

authors: jmbowman smarx timabbott


text:
Fix submessages (part 2)

This continues where my earlier PR from today left off.  The best way to test this is to do "/poll" and add a poll item or vote.  Then look at current_msg_list.last().submessages to see that the latest event was added.
I don't actually have an easy repro for the fairly obscure problem this fixes, but I think the data integrity piece can only help here (and the automated tests do help ensure that to some degree).

Merged, thanks @showell!  I think it's not 100% clear to me that we don't want to allow updating a given submessage, but it's clear where we'd add that feature if needed.

authors: showell timabbott


text:
Question on Flexbox and aligning content within a column.

Question on Flexbox and aligning content within a column.
This is the code I'm using. How would I then go about aligning the read more to the bottom of the column containers? (I've attached an image with the code too as the WYSIWYG editor isn't embedding my code correctly.
`

What is a funeral plan?

The only way to guarantee
 all your funeral costs are covered.

If you’ve ever had to arrange a funeral for a loved one, you’ll know what an emotional and distressing time it can be. Especially if you have no idea what sort of funeral event your loved one wanted.

            read more

Why pre-pay for your funeral?

The funeral you want.
Exactly how you want it.

A Funeral Plan from The Midcounties Co-operative provides an easy, cost effective way to organise your arrangements in advance, specify your wishes, and take care of the costs.

            read more

`

I'm probably over complicating my answer but could you use the Equalizer Plugin to force the columns to match each others height, put a bottom padding of 25px or so on the columns and then add position: absolute; bottom: 0; to the links to align them to the bottom?

I was hoping to hoping to make the .content block to fill the rest of the space after the title then aligning the read more to the bottom of the .content block. All using flex if possible.

Like this? http://codepen.io/andycochran/pen/wWZwzV
(Can be done w/ or w/o Flex.)

I'm gonna close this, as it's not really a bug. But feel free to keep chatting, I'll try to help if I can. Also a good place for how-to questions that aren't bugs is the Forum.

Thanks for that! Useful! Is it possible to use it twice within each block though? For example what I explained already works but I'd also like to put the equalizer on the light blue serif text because when moving down in responsive it screws up the layout then!

authors: AdamBarnwell andycochran lspoor

repo: zurb/foundation-sites


text:
Custom dropdown overlap in IE(8?)

Just merged the latest fixes, thanks guy they're perfect.
However I just noticed that the custom drop downs overlap like so (http://cl.ly/3G2J2I3K3N0a3h1i232w) in IE8. I haven't tried any other IE versions yet but they work as expected in Chrome and Firefox.

Hmm, yeah, that's kinda jacked. I'll check it out.

the same as #139

As noted in #139 one solution is to manually set z-indices for the first sibling container - not elegant, but effective. I'm reticent to build in a solution for this for IE7/8 if only because the only real solution is to use JS to traverse and add those z-indices manually, and that could cause all sorts of problems if we do it all the time. I'm open to clever suggestions though.

repo: zurb/foundation


text:
Slide Show Images stuck when it reached to 4th index

Hi, I have added total 6 images. And when slideshow comes to 4th index. It stuck and not move to next image.
override func viewWillAppear(_ animated: Bool) {
self.imagesSlideShow.setImageInputs([ImageSource(image: UIImage(named: "1")!),ImageSource(image: UIImage(named: "4")!),ImageSource(image: UIImage(named: "3")!),ImageSource(image: UIImage(named: "2")!),ImageSource(image: UIImage(named: "5")!),ImageSource(image: UIImage(named: "7")!)])
self.imagesSlideShow.contentMode = .scaleToFill
self.imagesSlideShow.slideshowInterval = 2
self.imagesSlideShow.draggingEnabled = false
self.imagesSlideShow.circular = true
self.imagesSlideShow.contentScaleMode = UIViewContentMode.scaleAspectFill
self.imagesSlideShow.delegate = self
}

Hi @awaisiqbaldev
Did you find solution for this?

authors: apphardtask awaisiqbaldev

repo: zvonicek/ImageSlideshow