remove some deprecated pre-1.0 stdlib modules (#20202)

* remove pre-1.0 stdlib deprecations

notable exceptions:
* ze, toU8 etc in system/arithmetics
* potentially callsite

* undo macros, ospaths, securehash, oswalkdir

* add sets back

* add back future, document deprecated versions

* add to changelog [skip ci]
This commit is contained in:
metagn
2022-08-23 21:18:40 +03:00
committed by GitHub
parent a895bbf714
commit f4af9e955b
13 changed files with 18 additions and 980 deletions

View File

@@ -1,48 +0,0 @@
discard """
output: '''
HandlePrintEvent: Output -> Handled print event
HandlePrintEvent2: Output -> printing for ME
HandlePrintEvent2: Output -> printing for ME
'''
"""
import events
type
PrintEventArgs = object of EventArgs
user*: string
proc handleprintevent*(e: EventArgs) =
write(stdout, "HandlePrintEvent: Output -> Handled print event\n")
proc handleprintevent2*(e: EventArgs) =
var args: PrintEventArgs = PrintEventArgs(e)
write(stdout, "HandlePrintEvent2: Output -> printing for " & args.user)
var ee = initEventEmitter()
var eventargs: PrintEventArgs
eventargs.user = "ME\n"
##method one test
ee.on("print", handleprintevent)
ee.on("print", handleprintevent2)
ee.emit("print", eventargs)
##method two test
type
SomeObject = object of RootObj
printEvent: EventHandler
var obj: SomeObject
obj.printEvent = initEventHandler("print")
obj.printEvent.addHandler(handleprintevent2)
ee.emit(obj.printEvent, eventargs)
obj.printEvent.removeHandler(handleprintevent2)
ee.emit(obj.printEvent, eventargs)

View File

@@ -1,66 +1,17 @@
discard """
cmd: "nim $target --threads:on $options $file"
errormsg: "illegal recursion in type 'TIRC'"
line: 16
line: 12
"""
import events
import net
import strutils
import os
type
TMessageReceivedEventArgs = object of EventArgs
Nick*: string
Message*: string
TIRC = object
EventEmitter: EventEmitter
MessageReceivedHandler*: EventHandler
Socket: Socket
Thread: Thread[TIRC]
proc initIRC*(): TIRC =
result.Socket = socket()
result.EventEmitter = initEventEmitter()
result.MessageReceivedHandler = initEventHandler("MessageReceived")
proc IsConnected*(irc: var TIRC): bool =
return running(irc.Thread)
proc sendRaw*(irc: var TIRC, message: string) =
irc.Socket.send(message & "\r\L")
proc handleData(irc: TIRC) {.thread.} =
var connected = False
while connected:
var tup = @[irc.Socket]
var o = select(tup, 200)
echo($o)
echo($len(tup))
if len(tup) == 1:
#Connected
connected = True
#Parse data here
else:
#Disconnected
connected = False
return
proc Connect*(irc: var TIRC, nick: string, host: string, port: int = 6667) =
connect(irc.Socket, host, TPort(port), TDomain.AF_INET)
send(irc.Socket,"USER " & nick & " " & nick & " " & nick & " " & nick & "\r\L")
send(irc.Socket,"NICK " & nick & "\r\L")
var thread: Thread[TIRC]
createThread(thread, handleData, irc)
irc.Thread = thread
when true:
var irc = initIRC()
irc.Connect("AmryBot[Nim]","irc.freenode.net",6667)
irc.sendRaw("JOIN #nim")
os.Sleep(4000)